﻿@model ShoppingCartModel
@using Nop.Core.Domain.Orders
@using Nop.Web.Models.Checkout
@using Nop.Web.Models.ShoppingCart;
@{
    Layout = "~/Themes/CNet/Shared/_HomePage_Master.cshtml";

    //title
    Html.AddTitleParts(T("PageTitle.ShoppingCart").Text);
}
<script type="text/javascript">
    $(function () {
        //光标移开文本框触发事件
        $("input[productvariantid]").blur(function () {
            //获取文本框中的值
            var number = $(this).val();
            //获取商品的productVariantId
            var productVariantId = $(this).parent().parent().attr("productVariantId");
            //获取商品的单价
            var unitPrice = $(this).attr("unitPrice");
            //判断是否是数字
            if ($.isNumeric(number)) {
                if (number >= 1) {
                    //alert(number + ":" + productVariantId); 
                    //changeNumber(productVariantId, number, unitPrice); //修改数据
                } else {
                    alert("请输入大于0的数字");
                    number = 1;
                }
            } else {
                alert("请输入大于0的数字");
                number = 1;
            }
            $(this).val(number);
            //修改数据
            changeNumber(productVariantId, number, unitPrice);
        });

        //减号
        $("span[subtract=subtract]").click(function () {
            //获取商品的productVariantId
            var productVariantId = $(this).parent().attr("productVariantId");
            //获取商品的单价
            var unitPrice = $(this).parent().attr("unitPrice");
            //获取文本框
            var inputNumber = $("input[productvariantid]", $(this).next());
            //获取文本框的值
            var number = inputNumber.val();
            if ($.isNumeric(number)) {
                if (number > 1) {
                    number = parseInt(number) - 1;
                    inputNumber.val(number);
                    //修改数量
                    changeNumber(productVariantId, number, unitPrice);
                }
            }
        });

        //加号
        $("span[add=add]").click(function () {
            //获取商品的productVariantId
            var productVariantId = $(this).parent().attr("productVariantId");
            //获取商品的单价
            var unitPrice = $(this).parent().attr("unitPrice");
            //获取文本框
            var inputNumber = $("input[productvariantid]", $(this).prev());
            //获取文本框的值
            var number = inputNumber.val();
            if ($.isNumeric(number)) {
                number = parseInt(number) + 1;
                inputNumber.val(number);
                //修改数量
                changeNumber(productVariantId, number, unitPrice);
            }
        });

        //删除
        $("a[mydelete=mydelete]").click(function () {
            if (confirm("确定删除？")) {
                var cartItemId = $(this).attr("cartItemId");
                $.ajax({
                    url: "/ShoppingCart/AjaxDelete",
                    type: "post",
                    data: { cartItemId: cartItemId },
                    success: function (data) {
                        if (data.msg == "1") {
                            alert("删除成功");
                            window.location.href = "/ShoppingCart/Cart";
                        } else {
                            alert("删除失败！");
                        }
                    }
                });
                return false;
            }
        });

        //清空购物车
        $("#myClearCart").click(function () {
            $.ajax({
                url: "/ShoppingCart/AjaxClearCart",
                type: "post",
                success: function (data) {
                    if (data.msg == "1") {
                        alert("清空成功");
                        window.location.href = "/Home/Index";
                    } else {
                        alert("清空失败");
                    }
                }
            });

            return false;
        });

        //去结算
        $("#aCheckoutLink").click(function () {
            $("#container").hide(); //订单窗口隐藏
            $("#containerAddress").show(); //订单地址确认窗口显示
            return false;
        });

        //确认收货地址
        $("#sureAddress").click(function () {
            sureAddress(); //执行方法
            return false;
        });

        //取消
        $("#orderCanel").click(function () {
            $("#containerAddress").hide(); //订单地址确认窗口隐藏
            $("#container").show(); //订单窗口显示
            return false;
        });

        //提交订单
        $("#submitOrder").click(function () {
            createOrder();
            return false;
        });
    });

    //修改数量
    function changeNumber(productVariantId, quantity, unitPrice) {
        $.ajax({
            url: "/ShoppingCart/AjaxUpdateCount",
            type: "post",
            data: { productVariantId: productVariantId, quantity: quantity },
            success: function (data) {
                if (data.msg == "1") {
                    //更新成功--修改相应的数据
                    //该商品的数量
                    $("#otherCartTable td[productVariantId2=" + productVariantId + "]").text("份量：" + quantity + "份");
                    //计算出该商品的总金额
                    $("b[productvariantid=" + productVariantId + "]").text(getTwoDecimal(quantity * unitPrice)); //这个商品的总价
                    $("#otherCartTable b[productVariantId2=" + productVariantId + "]").text(getTwoDecimal(quantity * unitPrice));
                    var total = 0;
                    //所有的总价
                    $.each($("b[productvariantid]"), function (key, value) {
                        total += parseFloat($(value).text());
                    });
                    //给总价赋值
                    $("#totalPrice").text(getTwoDecimal(total));
                    $("#totalPay").text(getTwoDecimal(total));
                } else if (data.msg == "5") {
                    //更新失败
                    alert("服务器异常，请稍后再试！");
                }
            },
            error: function () {
                alert("服务器维护，请稍后再试！");
            }
        });
    }

    //四舍五入保留两位小数
    function getTwoDecimal(x) {
        var f_x = parseFloat(x);
        if (isNaN(f_x)) {
            alert("不是数字");
            return false;
        }
        var f_x = Math.round(x * 100) / 100;
        var s_x = f_x.toString();
        var pos_decimal = s_x.indexOf('.');
        if (pos_decimal < 0) {
            pos_decimal = s_x.length;
            s_x += '.';
        }
        while (s_x.length <= pos_decimal + 2) {
            s_x += '0';
        }
        return s_x;
    }

    //确认收货地址
    function sureAddress() {
        //判断输入框中的内容
        var userAddress = $("#iUserAddress").val(); //收货地址
        var userName = $("#iUserName").val(); //收货人
        var userPhone = $("#iUserPhone").val(); //联系电话
        var billingAddressId = $("#hdBillingAddressId").val(); //地址主键
        if ($.trim(userAddress) && $.trim(userName) && $.trim(userPhone)) {
            //把数据提交到后台数据库中
            $.ajax({
                url: "/Checkout/AjaxUpdateAddress",
                type: "post",
                data: { billingAddressId: billingAddressId, userAddress: userAddress, userName: userName, userPhone: userPhone },
                success: function (data) {
                    if (data == "1") {
                        $("#addr_box").hide(); //地址隐藏
                        $("#cashin_box").show(); //订单结算显示
                        $("#pr_totalprice").text("¥" + $("#totalPay").text()); //总金额
                        $("#spanSureAddress").text(userAddress); //地址
                        $("#spanSureName").text(userName); //姓名
                        $("#spanSurePhone").text(userPhone); //电话
                    } else {
                        alert("操作失败，请稍后再试！");
                    }
                },
                error: function () {
                    alert("服务器在维护中，请稍后再试！");
                }
            });
        } else {
            alert("请完善信息！");
        }
    }

    //生成订单
    function createOrder() {
        showMyCover("myCoverDiv"); //显示遮罩层
        $.ajax({
            url: "/Checkout/AjaxCreateOrder",
            type: "post",
            success: function (data) {
                closeMyCover("myCoverDiv"); //隐藏遮罩层
                if (data == "1") {
                    //支付成功
                    $("#containerAddress").hide(); //核对订单隐藏
                    $("#containerCreateOrder").show(); //订单提交成功显示
                    $("#myShoppingCartItems").text("(0)"); //购物车中数量变为0
                } else {
                    //支付失败
                    alert("订单生成失败，请稍后再试！");
                }
            },
            error: function () {
                closeMyCover("myCoverDiv"); //隐藏遮罩层
                alert("服务器出现异常，请稍后再试！");
            }
        });
    }
</script>
<div class="shop_main">
    <div class="cart">
        <div id="container" class="main">
            <div class="flow_step_no1 flow_cart">
                <div class="flow_step">
                    <ol class="cols3">
                        <li class="step_1">我的购物车</li>
                        <li class="step_2">填写核对订单</li>
                        <li class="step_3">订单提交成功</li>
                    </ol>
                </div>
            </div>
            <table class="table_cart">
                <colgroup>
                    <col class="col1">
                    <col class="col2">
                    <col class="col3">
                    <col class="col4">
                    <col class="col5">
                    <col class="col6">
                    <col class="col7">
                </colgroup>
                <thead>
                    <tr>
                        <th>
                            <strong class="tit_cart">购物车中的商品</strong>
                        </th>
                        <th>
                            单价
                        </th>
                        <th>
                            <span class="tit_count">购买数量</span>
                        </th>
                        <th>
                            金额小计
                        </th>
                        <th>
                            店铺
                        </th>
                        <th>
                            库存
                        </th>
                        <th class="cart_act">
                            操作
                        </th>
                    </tr>
                </thead>
                @Html.Partial("OrderSummary", Model)
            </table>
        </div>
        <!-- 购物车列表 结束 -->
        <div id="containerAddress" class="page_dd" style="display: none;">
            <!-- 流程 开始 -->
            <div class="flow_step_no2 flow_cart">
                <div class="flow_step">
                    <ol class="cols3">
                        <li class="step_1">我的购物车</li>
                        <li class="step_2">填写核对订单</li>
                        <li class="step_3">订单提交成功</li>
                    </ol>
                </div>
            </div>
            <!-- 流程 结束 -->
            <!-- 内容 开始 -->
            <div class="order_bor">
                <!-- 地址 开始 -->
                <div id="addr_box" class="dd_mod_order order_address" name="address">
                    <div class="dd_mod_order_hd">
                        <h3 class="dd_mod_order_hd_tit">
                            收货信息</h3>
                    </div>
                    @Html.Action("OpcBillingForm", "Checkout")
                </div>
                <!-- 地址 结束 -->
                <!-- 支付 开始 -->
                <!-- 支付 结束-->
                <!-- 订单结算 开始 -->
                <div id="cashin_box" class="dd_mod_order order_cashin" style="display: none;">
                    <div class="dd_mod_order_hd">
                        <h3 class="dd_mod_order_hd_tit">
                            确认订单信息</h3>
                    </div>
                    <div>
                        <table width="0" border="0" id="otherCartTable" style="border-bottom: 1px solid #cecece;
                            line-height: 36px;">
                            <tr>
                                <td width="210" bgcolor="#cecece">
                                    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;商品
                                </td>
                                <td width="150" bgcolor="#cecece">
                                    商品名
                                </td>
                                <td width="350" bgcolor="#cecece">
                                    店铺名
                                </td>
                                <td width="360" bgcolor="#cecece">
                                    数量
                                </td>
                                <td width="120" bgcolor="#cecece">
                                    价格
                                </td>
                            </tr>
                            @Html.Partial("OrderSureSummary", Model)
                        </table>
                    </div>
                    <!--S 订单总计 -->
                    <div class="cashin_stat" id="summary">
                        <div class="cashin_stat_price">
                            总计<strong class="co_txt1" id="pr_totalprice" pr="9988.00">¥0.00</strong></div>
                        <div class="cashin_stat_row">
                            <div class="cashin_stat_row_c1" id="addrfinal_box">
                                <strong>送至：</strong><span id="spanSureAddress">广东省深圳市南山区深圳市南山区科技园长虹科技大厦1802</span><br>
                                <span id="spanSureName">胡玉龙</span>（收件人）<span id="spanSurePhone">15986643251</span></div>
                        </div>
                        <div class="cashin_stat_row" id="shipTime">
                            <div class="cashin_stat_row_c1">
                                <div class="cashin_stat_time_c1" name="default" style="">
                                    <span class="font03"><strong>配送时间：</strong> 周三 07月10日 上午09:00-14:00</span><br>
                                </div>
                            </div>
                        </div>
                        <div class="cashin_stat_submit_wrap">
                            <a id="submitOrder" href="#" class="submit_wrap_btn_order"><img src="@Url.Content("~/Themes/CNet/Content/image/tijiao_ok.jpg")"></a>
                        </div>
                    </div>
                    <!--E 订单总计 -->
                </div>
                <!-- 订单结算 结束 -->
            </div>
        </div>
        <!-- 内容 结束 -->
        <div id="containerCreateOrder" class="page_dd" style="display: none;">
            <!-- 流程 开始 -->
            <div class="flow_step_no3 flow_cart">
                <div class="flow_step">
                    <ol class="cols3">
                        <li class="step_1">我的购物车</li>
                        <li class="step_2">填写核对订单</li>
                        <li class="step_3">订单提交成功</li>
                    </ol>
                </div>
            </div>
            <!-- 流程 结束 -->
            <!-- 内容 开始 -->
            <div class="order_bor">
                <!-- 地址 开始 -->
                <div id="addr_box" class="dd_mod_order order_address" name="address">
                    <div class="dd_mod_order_bj">
                        <p>
                            感谢您对美食街的支持，我们将在规定的时间内将快餐给您送到!</p>
                    </div>
                </div>
                <!-- 地址 结束 -->
                <!-- 支付 开始 -->
                <!-- 支付 结束-->
                <!-- 订单结算 开始 -->
                <!-- 订单结算 结束 -->
            </div>
        </div>
    </div>
</div>
<div id="myCoverDiv" class="zhezhaoceng">
    <img src="@Url.Content("~/Themes/CNet/Content/image/progressBar.gif")" />
</div>
<div id="bodyBackGround" style="z-index: 99999999;">
</div>
